Vickrey–Clarke–Groves Mechanism
   HOME

TheInfoList



OR:

In
mechanism design Mechanism design is a field in economics and game theory that takes an objectives-first approach to designing economic mechanisms or incentives, toward desired objectives, in strategic settings, where players act rationally. Because it starts a ...
, a Vickrey–
Clarke Clarke is a surname which means "clerk". The surname is of English and Irish origin and comes from the Latin . Variants include Clerk and Clark. Clarke is also uncommonly chosen as a given name. Irish surname origin Clarke is a popular surname i ...
–Groves (VCG) mechanism is a generic
truthful mechanism In game theory, an asymmetric game where players have private information is said to be strategy-proof or strategyproof (SP) if it is a weakly-dominant strategy for every player to reveal his/her private information, i.e. given no information about ...
for achieving a socially-optimal solution. It is a generalization of a
Vickrey–Clarke–Groves auction A Vickrey–Clarke–Groves (VCG) auction is a type of sealed-bid auction of multiple items. Bidders submit bids that report their valuations for the items, without knowing the bids of the other bidders. The auction system assigns the items in a ...
. A VCG auction performs a specific task: dividing items among people. A VCG ''mechanism'' is more general: it can be used to select any outcome out of a set of possible outcomes.


Notation

There is a set X of possible outcomes. There are n agents which have different valuations for each outcome. The valuation of agent i is represented as a function: : v_i : X \longrightarrow R_+ which expresses the value it has for each alternative, in monetary terms. It is assumed that the agents have
Quasilinear utility In economics and consumer theory, quasilinear utility functions are linear in one argument, generally the numeraire. Quasilinear preferences can be represented by the utility function u(x_1, x_2, \ldots, x_n) = x_1 + \theta (x_2, \ldots, x_n) whe ...
functions; this means that, if the outcome is x and in addition the agent receives a payment p_i (positive or negative), then the total utility of agent i is: : u_i := v_i(x) + p_i Our goal is to select an outcome that maximizes the sum of values, i.e.: : x^(v) = \arg\max_ \sum_^n v_i(x) In other words, our social-choice function is
utilitarian In ethical philosophy, utilitarianism is a family of normative ethical theories that prescribe actions that maximize happiness and well-being for all affected individuals. Although different varieties of utilitarianism admit different charac ...
.


Solution family

The VCG family is a family of mechanisms that implements the utilitarian welfare function. A typical mechanism in the VCG family works in the following way: 1. It asks the agents to report their value function. I.e, each agent i should report v_i(x) for each option x. 2. Based on the agents' report-vector v, it calculates x^* = x^(v) as above. 3. It pays, to each agent i, a sum of money equal to the total values of the ''other'' agents: : p_i := \sum_ v_j(x^*) 4. It pays, to each agent i, an additional sum, based on an arbitrary function of the values of the other agents: : p_i + h_i(v_) where v_ = (v_1, \dots, v_, v_, \dots, v_n), that is, h_i is a function that depends only on the valuations of the other agents.


Truthfulness

Every mechanism in the VCG family is a
truthful mechanism In game theory, an asymmetric game where players have private information is said to be strategy-proof or strategyproof (SP) if it is a weakly-dominant strategy for every player to reveal his/her private information, i.e. given no information about ...
, that is, a mechanism where bidding the true valuation is a
dominant strategy In game theory, strategic dominance (commonly called simply dominance) occurs when one strategy is better than another strategy for one player, no matter how that player's opponents may play. Many simple games can be solved using dominance. The ...
. The trick is in step 3. The agent is paid the total value of the other agents; hence, together with its own value, the total welfare of the agent is exactly equal to the total welfare of society. Hence, the incentives of the agent are aligned with those of the society and the agent is incentivized to be truthful in order to help the mechanism achieve its goal. The function h_i, in step 4, does not affect the agent's incentives, since it depends only on the declarations of the other agents.


The

Clarke Clarke is a surname which means "clerk". The surname is of English and Irish origin and comes from the Latin . Variants include Clerk and Clark. Clarke is also uncommonly chosen as a given name. Irish surname origin Clarke is a popular surname i ...
pivot rule

The function h_i is a parameter of the mechanism. Every selection of h_i yields a different mechanism in the VCG family. We could take, for example: : h_i(v_) = 0, but then we would have to actually pay the players to participate in the auction. We would rather prefer that players give money to the mechanism. An alternative function is: : h_i(v_) = - \max_ \sum_ v_j(x) It is called the ''Clarke pivot rule''. With the Clarke pivot rule, the total amount paid by the player is: ::(social welfare of others if i were absent) - (social welfare of others when i is present). This is exactly the
externality In economics, an externality or external cost is an indirect cost or benefit to an uninvolved third party that arises as an effect of another party's (or parties') activity. Externalities can be considered as unpriced goods involved in either co ...
of player i. When the valuations of all agents are weakly-positive, the Clarke pivot rule has two important properties: *
Individual rationality Rational choice theory refers to a set of guidelines that help understand economic and social behaviour. The theory originated in the eighteenth century and can be traced back to political economist and philosopher, Adam Smith. The theory postula ...
: for every player ''i'', v_i (x) + p_i \geq 0. It means that all the players are getting positive utility by participating in the auction. No one is forced to bid. * No positive transfers: for every player ''i'', p_i \leq 0 . The mechanism does not need to pay anything to the bidders. This makes the VCG mechanism a win-win game: the players receive the outcomes they desire, and pay an amount which is less than their gain. So the players remain with a net positive gain, and the mechanism gains a net positive payment.


Weighted VCG mechanism

Instead of maximizing the sum of values, we may want to maximize a weighted sum: : x^(v) = \arg\max_ \sum_^n w_i v_i(x) where w_i is a weight assigned to agent i. The VCG mechanism from above can easily be generalized by changing the price function in step 3 to: : p_i := \sum_ w_j v_j(x^*)


Cost minimization

The VCG mechanism can be adapted to situations in which the goal is to minimize the sum of costs (instead of maximizing the sum of gains). Costs can be represented as negative values, so that minimization of cost is equivalent to maximization of values. The payments in step 3 are negative: each agent has to pay the total cost incurred by all other agents. If agents are free to choose whether to participate or not, then we must make sure that their net payment is non-negative (this requirement is called
individual rationality Rational choice theory refers to a set of guidelines that help understand economic and social behaviour. The theory originated in the eighteenth century and can be traced back to political economist and philosopher, Adam Smith. The theory postula ...
). The Clarke pivot rule can be used for this purpose: in step 4, each agent i is paid the total cost that would have been incurred by other agents, if the agent i would not participate. The net payment to agent i is its marginal contribution to reducing the total cost.


Applications


Auctions

Vickrey–Clarke–Groves auction A Vickrey–Clarke–Groves (VCG) auction is a type of sealed-bid auction of multiple items. Bidders submit bids that report their valuations for the items, without knowing the bids of the other bidders. The auction system assigns the items in a ...
is an application of VCG mechanism for welfare maximization. Here, X is the set of all possible allocations of items to the agents. Each agent assigns a personal monetary value to each bundle of items, and the goal is to maximize the sum of the values of all agents. A well-known special case is the
Vickrey Auction A Vickrey auction or sealed-bid second-price auction (SBSPA) is a type of sealed-bid auction. Bidders submit written bids without knowing the bid of the other people in the auction. The highest bidder wins but the price paid is the second-highest ...
. Here, there is only a single item, and the set X contains n+1 possible outcomes: either sell the item to one of the n agents, or not sell it at all. In step 3, the winner agent is paid 0 (since the total value of the others is 0) and the losers receive a payment equal to the declared value of the winner. In step 4, the winner pays the second-highest bid (the total value of the others had he not participated) and the losers pay the declared value of the winner (the total value of the others had they not participated). All in all, the winner pays the second-highest bid and the losers pay 0. A VCG mechanism can also be used in a
double auction A double auction is a process of buying and selling goods with multiple sellers and multiple buyers. Potential buyers submit their bids and potential sellers submit their ask prices to the market institution, and then the market institution choose ...
. It is the most general form of incentive-compatible double-auction since it can handle a
combinatorial auction A combinatorial auction is a type of smart market in which participants can place bids on combinations of discrete heterogeneous items, or “packages”, rather than individual items or continuous quantities. These packages can be also called lot ...
with arbitrary value functions on bundles. Unfortunately, it is not budget-balanced: the total value paid by the buyers is smaller than the total value received by the sellers. Hence, in order to make it work, the auctioneer has to subsidize the trade.


Public project

The government wants to decide whether to undertake a certain project. The cost of the project is ''C''. Each citizen derives a different value from the project. The project should be undertaken if the sum of values of all citizens is more than the cost. Here, the VCG mechanism with the Clarke pivot rule means that a citizen pays a non-zero tax for that project if and only if they are pivotal, i.e., without their declaration the total value is less than ''C'' and with their declaration the total value is more than ''C''. This taxing scheme is incentive-compatible, but again it is not budget-balanced – the total amount of tax collected is usually less than ''C''.


Quickest paths

The quickest path problem is a cost-minimization problem. The goal is to send a message between two points in a communication network, which is modeled as a graph. Each computer in the network is modeled as an edge in the graph. Different computers have different transmission speeds, so every edge in the network has a numeric cost equal to the number of milliseconds it takes to transmit the message. Our goal is to send the message as quickly as possible, so we want to find the path with the smallest total cost. If we know the transmission-time of each computer (-the cost of each edge), then we can use a standard algorithm for solving the
shortest path problem In graph theory, the shortest path problem is the problem of finding a path between two vertices (or nodes) in a graph such that the sum of the weights of its constituent edges is minimized. The problem of finding the shortest path between tw ...
. If we do not know the transmission times, then we have to ask each computer to tell us its transmission-time. But, the computers have their own selfish interests so they might not tell us the truth. For example, a computer might tell us that its transmission time is very large, so that we will not bother it with our messages. The VCG mechanism can be used to solve this problem. Here, X is the set of all possible paths; the goal is to select a path x\in X with minimal total cost. The value of an agent, v_i(x), is minus the time it spent on the message: it is negative if i\in x and it is zero if i\notin x. The payment in step 3 is negative: each agent should pay to us the total time that the other agents spent on the message (note that the value is measured in units of time. We assume that it is possible to pay computers in units of time, or that it there is a standard way to translate time to money). This means that, together with its own spent time, each agent actually loses the total time it took the message to arrive its destination, so the agent is incentivized to help the mechanism achieve the shortest transmission time. The Clarke pivot rule can be used to make the mechanism individually-rational: after paying us the cost, each agent receives from us a positive payment, which is equal to the time it would have taken the message to arrive at its destination if the agent would not have been present. Obviously, this time is weakly larger than the time required when the agent is present, so the net gain of every agent is weakly positive. Intuitively, each agent is paid according to its marginal contribution to the transmission. Other graph problems can be solved in a similar way, e.g.
minimum spanning tree A minimum spanning tree (MST) or minimum weight spanning tree is a subset of the edges of a connected, edge-weighted undirected graph that connects all the vertices together, without any cycles and with the minimum possible total edge weight. T ...
or
maximum matching Maximum cardinality matching is a fundamental problem in graph theory. We are given a graph , and the goal is to find a matching containing as many edges as possible; that is, a maximum cardinality subset of the edges such that each vertex is adj ...
. A similar solution applies to the more general case where each agent holds some subset of the edges. For another example, where the VCG mechanism provides a sub-optimal approximation, see Truthful job scheduling.


Uniqueness

A VCG mechanism implements a
utilitarian In ethical philosophy, utilitarianism is a family of normative ethical theories that prescribe actions that maximize happiness and well-being for all affected individuals. Although different varieties of utilitarianism admit different charac ...
social-choice function - a function that maximizes a weighted sum of values (also called an affine maximizer). Roberts' theorem proves that, if: * The agents' valuation functions are unrestricted (each agent can have as value function any function from X to \mathbb), and - * There are at least three different possible outcomes (, X, \geq 3 and at least three different outcomes from X can happen), then ''only'' weighted utilitarian functions can be implemented. So with unrestricted valuations, the social-choice functions implemented by VCG mechanisms are the ''only'' functions that can be implemented truthfully. Moreover, the price-functions of the VCG mechanisms are also unique in the following sense. If: * The domains of the agents' valuations are
connected set In topology and related branches of mathematics, a connected space is a topological space that cannot be represented as the union of two or more disjoint non-empty open subsets. Connectedness is one of the principal topological properties that ...
s (particularly, agents can have real-valued preferences and not only integral preferences); * There is a
truthful mechanism In game theory, an asymmetric game where players have private information is said to be strategy-proof or strategyproof (SP) if it is a weakly-dominant strategy for every player to reveal his/her private information, i.e. given no information about ...
that implements a certain Outcome function with certain payment functions p_1,\dots,p_n; * There is another truthful mechanism that implements the same Outcome function with different payment functions p'_1,\dots,p'_n; Then, there exist functions h_1,\dots,h_n such that, for all i: ::p'_i(v_i,v_) = p_i(v_i,v_) + h_i(v_) I.e, the price functions of the two mechanisms differ only by a function that does not depend on the agent's valuation v_i (only on the valuations of the other agents). This means that VCG mechanisms are the only truthful mechanisms that maximize the
utilitarian In ethical philosophy, utilitarianism is a family of normative ethical theories that prescribe actions that maximize happiness and well-being for all affected individuals. Although different varieties of utilitarianism admit different charac ...
social-welfare.


Computational issues

A VCG mechanism has to calculate the optimal outcome, based on the agents' reports (step 2 above). In some cases, this calculation is computationally difficult. For example, in
combinatorial auction A combinatorial auction is a type of smart market in which participants can place bids on combinations of discrete heterogeneous items, or “packages”, rather than individual items or continuous quantities. These packages can be also called lot ...
s, calculating the optimal assignment is
NP-hard In computational complexity theory, NP-hardness ( non-deterministic polynomial-time hardness) is the defining property of a class of problems that are informally "at least as hard as the hardest problems in NP". A simple example of an NP-hard pr ...
. Sometimes there are
approximation algorithm In computer science and operations research, approximation algorithms are efficient algorithms that find approximate solutions to optimization problems (in particular NP-hard problems) with provable guarantees on the distance of the returned solu ...
s to the optimization problem, but, using such an approximation might make the mechanism non-truthful.


See also

*
Algorithmic mechanism design Algorithmic mechanism design (AMD) lies at the intersection of economic game theory, optimization, and computer science. The prototypical problem in mechanism design is to design a system for multiple self-interested participants, such that the part ...
*
Incentive compatibility A mechanism is called incentive-compatible (IC) if every participant can achieve the best outcome to themselves just by acting according to their true preferences. There are several different degrees of incentive-compatibility: * The stronger d ...
*
Quadratic voting Quadratic voting is a collective decision-making procedure which involves individuals allocating votes to express the ''degree'' of their preferences, rather than just the ''direction'' of their preferences. By doing so, quadratic voting seeks ...


References

{{DEFAULTSORT:Vickrey-Clarke-Groves mechanism Mechanism design